home *** CD-ROM | disk | FTP | other *** search
/ Sun Solutions 2000 #2 / Sun Solutions CD (Volume 2 2000)(Special Focus - Java Technologies)(Disc 1).ISO / products / Software / BostonBusinessComputing / bbc / dist / vnet < prev    next >
Text File  |  2000-02-11  |  4KB  |  170 lines

  1.  
  2. #
  3. # VSH script for Vnet Dispatch
  4. #
  5. IF ( -n $BBC ) THEN
  6.     set vnet = BBC
  7. ELSE
  8.     set vnet = "/usr/lib/bbc/"
  9. ENDIF
  10. SET v_host=vnet + "hosts.bbc"
  11.  
  12. # Closes terminal input, uses /dev/null instead.
  13. #SHELL "exec < /dev/tty > /dev/tty"
  14.  
  15. # Grab command name and set file spec. variables
  16. set v_com=argv:0
  17. set v_fs1=argv:1
  18. set v_fs2=argv:2
  19. set v_n1=(argv:1):un
  20. set v_n2=(argv:2):un
  21. EXPORT v_com v_host v_node v_trans v_os v_n1 v_n2
  22.  
  23. #
  24. # Check for unsupported command qualifiers
  25. #
  26. IF ( -n q_exclude ) THEN
  27.     ERROR "%VNET-E-NOEXCL the EXCLUDE qualifier is not currently supported for
  28.  this network"
  29.     EXIT
  30. ENDIF
  31. IF ( q_by_owner ) THEN
  32.     ERROR "%VNET-E-NOBYOWN the BY_OWNER qualifier is not currently supported for
  33.  this network"
  34.     EXIT
  35. ENDIF
  36. IF ( q_since != "" ) THEN
  37.     ERROR "%VNET-E-NOSINCE the SINCE qualifier is not currently supported for
  38.  this network"
  39.     EXIT
  40. ENDIF
  41. IF ( q_entry != "" ) THEN
  42.     ERROR "%VNET-E-NOENTRY the ENTRY qualifier is not supported for
  43.  network operations"
  44.     EXIT
  45. ENDIF
  46. IF ( q_symbol ) THEN
  47.     ERROR "%VNET-E-NOSYMBOL the SYMBOL qualifier is not supported for
  48.  network operations"
  49.     EXIT
  50. ENDIF
  51. IF ( q_protection != "" ) THEN
  52.     ERROR "%VNET-E-NOPROT the PROTECTION qualifier is not currently supported for
  53.  this network"
  54.     EXIT
  55. ENDIF
  56.  
  57. IF ( q_new_version ) THEN
  58.     ERROR "%VNET-E-NOVER the NEW_VERSION qualifier is not currently supported for
  59.  this network"
  60.     EXIT
  61. ENDIF
  62. IF ( q_before != "" ) THEN
  63.     ERROR "%VNET-E-NOBEFORE the BEFORE qualifier is not currently supported for
  64.  this network"
  65.     EXIT
  66. ENDIF
  67.  
  68. IF ( v_com == "rl" ) THEN
  69.     SET v_n1 = v_fs1-"::"
  70.     SET v_n1 = v_n1 - ":"
  71. ENDIF
  72.  
  73. # Verify v_node name in the file hosts.bbc, then get the
  74. # transport name and call that script.
  75. #
  76. SET IFS="    "
  77. IF ( -n v_n1 ) THEN
  78.       GETHOST v_n1    # Assigns values to  v_os v_node and v_trans
  79. ELSE IF ( -n v_n2 ) THEN
  80.       GETHOST v_n2
  81.       SET q_confirm = "" # since vcl does the confirm in this case, don't pass
  82. ENDIF             # the confirm qualifier on to the network.
  83. IF  ( -z v_node) THEN
  84.         GETHOST "default"
  85. ENDIF
  86. SET IFS=" "
  87. # Check if a network override was specified,
  88. IF ( -n vnetwork ) SET v_trans = vnetwork
  89. IF ( -n vnetxvms ) SET v_os = vnetxvms
  90.  
  91. #
  92. # Export these now, so that unix style wildcards can be converted by tr
  93. #
  94. EXPORT v_d1 v_f1 v_d2 v_f2 v_a1 v_a2 v_fs1
  95.  
  96. #
  97. # Special case for MAIL command
  98. #
  99. IF ( v_com == "ma" ) THEN
  100.     SET recips=`sh ${BBC}vmto $v_fs1`
  101.     SET text = v_fs2
  102. ENDIF
  103.  
  104. #
  105. # Determine if filespec. need to be converted from unix to vms style
  106. #
  107. IF ( v_os == "yes" ) THEN
  108.     IF ( -n v_n1 ) THEN            # Is remote node first?
  109.     set v_a1=v_fs1:va
  110.     set v_a1=v_a1 - "::"
  111.     set v_d1=v_fs1:vd
  112.     set v_f1=v_fs1:vf
  113.     set v_d2=v_fs2:ud
  114.     set v_f2=v_fs2:uf
  115.     set v_temp=`echo "$v_f2" | tr '%' '?' | tr -d '\012'`
  116.     IF (-n v_temp) THEN
  117.          SET v_f2 = v_temp
  118.     ENDIF
  119.     ELSE IF ( -n v_n2 ) THEN        # How about second?
  120.     set v_d1=v_fs1:ud
  121.     set v_f1=v_fs1:uf
  122.     set v_temp=`echo "$v_f1" | tr '%' '?' | tr -d '\012'`
  123.     IF (-n v_temp) THEN
  124.          SET v_f1 = v_temp
  125.     ENDIF
  126.     set v_a2=v_fs2:va
  127.     set v_a2=v_a2 - "::"
  128.     set v_d2=v_fs2:vd
  129.     set v_f2=v_fs2:vf
  130.     ENDIF
  131. ELSE                    # Don't translate, keep all unix
  132.     set v_a1=v_fs1:ua
  133.     set v_a1=v_a1 - "::"
  134.     set v_d1=v_fs1:ud
  135.     set v_f1=v_fs1:uf
  136.     set v_temp=`echo "$v_f1" | tr '%' '?' | tr -d '\012'`
  137.     IF (-n v_temp) THEN
  138.          SET v_f1 = v_temp
  139.     ENDIF
  140.     set v_a2=v_fs2:ua
  141.     set v_a2=v_a2 - "::"
  142.     set v_d2=v_fs2:ud
  143.     set v_f2=v_fs2:uf
  144.     set v_temp=`echo "$v_f2" | tr '%' '?' | tr -d '\012'`
  145.     IF (-n v_temp) THEN
  146.          SET v_f2 = v_temp
  147.     ENDIF
  148. ENDIF
  149.  
  150. IF ( v_com == "mv" ) THEN
  151.     IF ( v_os == "yes" ) THEN
  152.         set v_d2=v_fs2:vd
  153.         set v_f2=v_fs2:vf
  154.     ENDIF
  155. ENDIF
  156.  
  157. #
  158. # If the host name exists then
  159. #    call the appropriate transport script.
  160. #
  161. IF ( -z v_node ) THEN
  162.     ERROR "%VNET-W-UNKNODE, unknown node name."
  163.     EXIT
  164. ENDIF
  165.  
  166. # Call transport script with new args. all set up
  167. SET tp = vnet + "/" + v_trans
  168. SOURCE tp
  169. EXIT
  170.